var mongoose=require('mongoose');

//电影有关的字段
var MovieSchema=new mongoose.Schema({
    title:String,
    language:String,
    doctor:String,
    country:String,
    summary:String,
    flash:String,
    poster:String,
    year:Number,
    meta:{
        createAt:{
            type:Date,
            defaule:Date.now()
        },
        updateAt:{
            type:Date,
            defaule:Date.now()
        }
    }
})
//每次数据存储前调用方法
MovieSchema.pre('save',function (next) {
    //判断是否新加的,如新加则将当前时间设为创建时间
    if(this.isNew){
        this.meta.createAt=this.meta.updateAt=Date.now()
    }
    //否则将当前时间只加入更新时间
    else{
        this.meta.updateAt=Date.now()
    }
    next()
})
//实例后调用数据库
MovieSchema.statics = {
    fetch:function (cb) {
        return this
            .find({})
            .sort('meta.updateAt')
            .exec(cb)
        
    },
    //查找单条数据
    findById:function (id,cb) {
        return this
            .findOne({_id:id})
            .sort('meta.updateAt')
            .exec(cb)
    }
}

//将模式导出
module.exports=MovieSchema


